Utilizing a machine learning model to crowdsource funds for public services

ABSTRACT

A device may provide, to a user device, task data identifying tasks to be performed, and may receive, from the user device, a selection of a particular task from the tasks to be performed. The device may identify cameras associated with a particular task location, and may receive, from the user device, data identifying a location of the user device. The device may determine that the location of the user device matches the particular task location, and may receive, from the user device, task image data identifying images of the particular task location. The device may access, from the cameras, camera data identifying images of the particular task location, and may process the task image data and the camera data, with a machine learning model, to determine performance data associated with performance of the particular task. The device may perform one or more actions based on the performance data.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/744,999, filed Jan. 16, 2020 (now U.S. Pat. No. 11,049,054), which isincorporated herein by reference in its entirety.

BACKGROUND

Public services, such as snow removal, trash removal from parks,improving communities, and/or the like, may be provided by governmentsto people living within jurisdictions of the governments. Performance ofsuch public services by the governments requires funding by thegovernments (e.g., typically raised via taxes).

SUMMARY

According to some implementations, a method may include providing, to auser device, task data identifying tasks to be performed, and receiving,from the user device, a selection of a particular task from the tasks tobe performed, wherein the particular task is to be performed by a userof the user device. The method may include identifying one or morecameras associated with a particular task location, wherein theparticular task location includes a geographical location where theparticular task is to be performed, and receiving, from the user device,data identifying a location of the user device. The method may includedetermining that the location of the user device matches the particulartask location, and receiving, from the user device, task image dataidentifying images of the particular task location. The method mayinclude accessing, from the one or more cameras identified as associatedwith the particular task location, camera data identifying images of theparticular task location, and processing the task image data and thecamera data, with a machine learning model, to determine performancedata, wherein the performance data includes data identifying at leasttwo of what was performed for the particular task, how much of theparticular task was performed by the user, particular funds availablefor the particular task, or an amount of money to pay the user. Themethod may include performing one or more actions based on theperformance data.

According to some implementations, a device may include one or morememories; and one or more processors, communicatively coupled to the oneor more memories, configured to provide, to a plurality of user devices,task data identifying tasks to be performed, and receive, from theplurality of user devices and based on the task data, funding dataassociated with performance of the tasks, wherein the funding dataidentifies funds to allocate for performance of the tasks. The one ormore processors may be configured to receive, from one or more serverdevices, the funds based on the funding data, and provide, to aparticular user device, the task data identifying the tasks to beperformed. The one or more processors may be configured to receive, fromthe particular user device, a selection of a particular task from thetasks to be performed, and identify one or more cameras associated witha particular task location, wherein the particular task locationincludes a geographical location where the particular task is to beperformed. The one or more processors may be configured to receive, fromthe particular user device, data identifying a location of theparticular user device, and determine that the location of theparticular user device matches the particular task location. The one ormore processors may be configured to receive, from the particular userdevice, task image data identifying images of the particular tasklocation, and access, from the one or more cameras, camera dataidentifying images of the particular task location. The one or moreprocessors may be configured to process the task image data and thecamera data, with a machine learning model, to determine performancedata, wherein the performance data includes data identifying what wasperformed for the particular task, how much of the particular task wasperformed, particular funds available for the particular task, and anamount of money to pay for performance of the particular task. The oneor more processors may be configured to perform one or more actionsbased on the performance data.

According to some implementations, a non-transitory computer-readablemedium may store one or more instructions that, when executed by one ormore processors of a device, may cause the one or more processors toreceive, from a user device, a selection of a particular task from tasksto be performed, and identify one or more cameras associated with aparticular task location, wherein the particular task location includesa geographical location where the particular task is to be performed.The one or more instructions may cause the one or more processors toreceive, from the user device, data identifying a location of the userdevice, and determine that the location of the user device matches theparticular task location. The one or more instructions may cause the oneor more processors to receive, from the user device, task image dataidentifying images of the particular task location, and access, from theone or more cameras, camera data identifying images of the particulartask location. The one or more instructions may cause the one or moreprocessors to process the task image data and the camera data, with amodel, to determine performance data. The model may be trained, withhistorical task image data and historical camera data associated withperformance of a plurality of tasks, to determine predicted performancedata, and the performance data may include data identifying what wasperformed for the particular task, how much of the particular task wasperformed, particular funds available for the particular task, and anamount of money to pay for performance of the particular task. The oneor more instructions may cause the one or more processors to perform oneor more actions based on the performance data.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1H are diagrams of one or more example implementationsdescribed herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods described herein may be implemented.

FIG. 3 is a diagram of example components of one or more devices of FIG.2 .

FIGS. 4-6 are flow charts of example processes for utilizing a machinelearning model to crowdsource funds for public services.

DETAILED DESCRIPTION

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

Significant resources (e.g., processing resources, memory resources,network resources, transportation resources, taxpayers' money, and/orthe like) of a government are wasted tracking, managing, and/orperforming public services. The tracking, managing, and/or performing ofthe public services may be complicated, error prone, haphazard, and/orincomplete. Furthermore, several governments lack the resources toperform all public services required by people within jurisdictions ofthe governments. For example, a city typically lacks the resources toremove snow from all streets and/or sidewalks of the city during asnowstorm. This may result in safety issues for citizens of the city.

Some implementations described herein provide a crowdsource platformthat utilizes a machine learning model to crowdsource funds for publicservices. For example, the crowdsource platform may provide, to a userdevice, task data identifying tasks to be performed, and may receive,from the user device, a selection of a particular task from the tasks tobe performed, wherein the particular task is to be performed by a userof the user device. The crowdsource platform may identify one or morecameras associated with a particular task location, wherein theparticular task location includes a geographical location where theparticular task is to be performed, and may receive, from the userdevice, data identifying a location of the user device. The crowdsourceplatform may determine that the location of the user device matches theparticular task location, and may receive, from the user device, taskimage data identifying images of the particular task location. Thecrowdsource platform may access, from the one or more cameras identifiedas associated with the particular task location, camera data identifyingimages of the particular task location, and may process the task imagedata and the camera data, with a machine learning model, to determineperformance data. The performance data may include data identifying whatwas performed for the particular task, how much of the particular taskwas performed by the user, particular funds available for the particulartask, an amount of money to pay the user, and/or the like. Thecrowdsource platform may perform one or more actions based on theperformance data.

In this way, the crowdsource platform enables a government to providepublic services without wasting additional resources (e.g., processingresources, memory resources, network resources, manufacturing resources,transportation resources, and/or the like) for tracking, managing,and/or performing the public services. The crowdsource platform makestracking, managing, and/or performing public services less complicated,reduces errors, provides systematic and complete results, and/or thelike. Furthermore, the crowdsource platform enables the government toprovide safer communities to people within the jurisdiction of thegovernment.

FIGS. 1A-1H are diagrams of one or more example implementations 100described herein. As shown in FIG. 1A, user devices and third-partyserver devices may be associated with a crowdsource platform. As furthershown, the user devices may be associated with users or funders (e.g.,governments, merchants, communities, individuals, and/or the like) thatprovide funds for performance of tasks. The third-party server devicesmay be associated with merchants, financial institutions (e.g., banks),and/or the like, that may hold the funds, manage the funds, disperse thefunds, and/or the like.

As further shown in FIG. 1A, and by reference number 105, thecrowdsource platform may provide, to the user devices, task dataidentifying tasks to be performed. For example, the task data mayinclude data identifying the tasks to be performed (e.g., removal oftrash from parks, snow removal from sidewalks, removal of trash fromstreets, and/or the like), locations of where the tasks are to beperformed, images of the locations, sensor data associated with thelocations, scheduling data associated with the tasks, and/or the like.

As further shown in FIG. 1A, and by reference number 110, thecrowdsource platform may receive, from the user devices, funding dataassociated with performance of the tasks. For example, the funding datamay include data identifying funds to allocate for performance of thetasks (e.g., funds to allocate for a particular task, funds to allocatefor a particular type of task, funds to allocate for tasks associatedwith a particular geographical area, funds to allocate for a particularcommunity or cause, and/or the like). In some implementations, thecrowdsource platform may periodically receive the funding data from thethird-party server devices, may continuously receive the funding datafrom the third-party server devices, and/or the like. In someimplementations, the crowdsource platform may store the funding data ina data structure (e.g., a database, a table, a list, and/or the like)associated with the crowdsource platform.

As further shown in FIG. 1A, and by reference number 115, thecrowdsource platform may receive, from the third-party server devices,funds based on the funding data. In some implementations, thecrowdsource platform may maintain the funds rather than obtaining thefunds from third-party server devices. The crowdsource platform mayreceive or maintain funds (e.g., money) allocated for performance ofparticular tasks, funds allocated for a general fund, funds allocatedfor a particular community or cause, and/or the like. In someimplementations, the crowdsource platform may evenly allocate the fundsfor the tasks to be performed. Additionally, or alternatively, thecrowdsource platform may prioritize the funds, based on amounts in thefunds, for the tasks to be performed.

In some implementations, there may be hundreds, thousands, and/or thelike, of user devices and/or third-party server devices that producethousands, millions, billions, and/or the like, of data points providedin the task data and/or the funding data. In this way, the analyticalplatform may handle thousands, millions, billions, and/or the like, ofdata points within a period of time (e.g., daily, weekly, monthly), andthus may provide “big data” capability.

As shown in FIG. 1B, a user device may be associated with thecrowdsource platform and a user (e.g., a worker) who may perform one ormore of the tasks. For example, the user device may be a smart phoneoperated by the user, and may include an application that displays auser interface associated with the crowdsource platform. The user mayhave previously installed the application, accessed a website, and/orthe like, and registered an account with the crowdsource platform (e.g.,including providing basic identification information, contactinformation, tax information, and/or the like). This may permit the userto thereafter access the crowdsource platform via the application (e.g.,by logging into the application, the website, and/or the like).

As shown further shown in FIG. 1B, and by reference number 120, thecrowdsource platform may provide, to the user device, the task dataidentifying the tasks to be performed (e.g., tasks for which funds havebeen allocated, as described above in connection with FIG. 1A). Forexample, the tasks may include shoveling snow, picking weeds, removingtrash, and/or the like. The user device may display the task data to theworker via a user interface. In some implementations, the user devicemay display, in association with each task, an amount of money that theuser will be paid upon completing the task. In some implementations, theidentified tasks may include all tasks for which funds have beenallocated. Alternatively, the identified tasks may be limited based onadditional factors. For example, the crowdsource platform may preventsome tasks from being listed, such as tasks that are not appropriate forthe season (e.g., shoveling snow during non-winter months), tasks unableto be performed by the user, and/or the like. As another example, theworker may have previously selected one or more particular tasks (e.g.,types of tasks, locations of tasks, times of tasks, etc.) that the useris willing to perform, and the crowdsource platform may provide, to theuser device, task data identifying the tasks to be performed based onthe information indicating the particular tasks that the user is willingto perform (e.g., limited to the particular tasks previously selected bythe user).

In some implementations, the crowdsource platform may automaticallyidentify tasks (e.g., trash removal, snow removal, graffiti removal,weed removal, and/or the like) to be completed based on sensor datareceived by the crowdsource platform. The sensor data may include dataindicating how full a trash can is, a quantity of trash in a park (e.g.,based on image recognition of trash in images of the park), a quantityof snow to remove from a street (e.g., based on images of the street),graffiti to remove from a building (e.g., based on images of thebuilding), weeds to be removed from a vacant lot (e.g., based on imagesof the vacant lot), and/or the like. In this way, the crowdsourceplatform may automatically create the list of tasks to be performedbased on sensor data at various locations.

As further shown in FIG. 1B, and by reference number 125, thecrowdsource platform may receive, from the user device, a selection of aparticular task, of the tasks, to be performed by the user of the userdevice (e.g., removing trash from a local park). In someimplementations, the user device may display, via a user interface, alist of the tasks provided in the task data, and the user may utilizethe user interface to select the particular task from the list of tasks.The user device may provide information indicating selection of theparticular task to the crowdsource platform. For example, the userdevice may display a list of tasks that includes shoveling snow, pickingweeds, and removing trash, and the user may select removing trash fromthe list. In this example, the crowdsource platform may receive, fromthe user device, information indicating selection of removing trash asthe particular task.

In some implementations, the user may provide an indication that theuser is willing to perform the particular task for free, for an amountof money less than an amount requested by the crowdsource platform,and/or the like. Additionally, or alternatively, the crowdsourceplatform may not specify an amount of money to be paid for performingthe task (or may provide only a suggested amount), and the user maysubmit a bid. The crowdsource platform may receive bids from multipleworkers for a particular task, and may compare the bids. The crowdsourceplatform may award the particular task to the worker that submitted alowest bid, may award the particular task based on the bid andadditional factors (e.g., a time of completion, worker reliability,etc.), and/or the like.

In some implementations, a user may propose to perform a task that hasnot been identified by the crowdsource platform. For example, the usermay identify a parking lot that needs to be cleaned, may capture imagesof the parking lot, and may provide the images to the crowdsourceplatform. The crowdsource platform may add cleaning the parking lot as atask to be performed, may decline the offer to perform the task, and/orthe like. In some implementations, the user may propose an amount ofmoney that the crowdsource platform should pay for performing anunidentified task. Additionally, or alternatively, the crowdsourceplatform may determine, either independently or based on the proposedamount, an amount of money that the user will be paid. In someimplementations, a user may proactively perform a task that has not beenidentified by the crowdsource platform, may provide images of the tasklocation captured before, during, and/or after performance of theunidentified task to the crowdsource platform, and may solicit paymentfrom the crowdsource platform. The crowdsource platform may determinewhether to pay the user for performance of the unidentified task.

As shown in FIG. 1C, and by reference number 130, the crowdsourceplatform may identify cameras associated with a particular tasklocation. In some implementations, the particular task location mayinclude a geographical location where the particular task (e.g., thetask selected by the user) is to be performed. For example, as shown inFIG. 1C, the particular task location may be a local park. As otherexamples, the particular task location may be one or more portions of aroadway, a sidewalk, a trail, a common area, a facility, a landmark,and/or the like. The particular task location may be part of a publicspace, a private space, a business, a community, and/or the like.

The cameras associated with the particular task location may be, forexample, cameras at or near the particular task location, at a positionwithin range of the particular task location (e.g., such that imagescaptured by the cameras have sufficient resolution for the crowdsourceplatform to accurately identify the particular task location, theworker, the particular task, performance of the particular task, and/orthe like), and/or the like. In some implementations, the cameras may beassociated with (e.g., owned by, managed by, maintained by, and/or thelike) the crowdsource platform, a government entity associated with thecrowdsource platform, a business entity associated with the crowdsourceplatform, a private entity associated with the crowdsource platform,and/or the like. The cameras may be installed for the purpose ofmonitoring performance of tasks as described herein, may have beenpreviously installed for purposes other than monitoring performance oftasks as described herein, and/or the like. In some implementations, thecameras may be provided on unmanned aerial vehicles (UAVs) or dronesthat may be dispatched by the crowdsource platform to the particulartask location when image data associated with the particular location isunavailable, in addition to image data associated with the particularlocation, and/or the like.

As shown in FIG. 1D, and by reference number 135, the crowdsourceplatform may receive data identifying a location of the user device. Forexample, the crowdsource platform may receive the data identifying thelocation from the user device of the user that selected the particulartask (e.g., as determined by a global positioning system (GPS) componentof the user device). In some implementations, the user may cause theuser device to provide the data identifying the location of the userdevice to the crowdsource platform (e.g., via a user interfaceassociated with the crowdsource platform). Additionally, oralternatively, the user device may automatically provide the dataidentifying the location of the user device to the crowdsource platform(e.g., based on a current time corresponding to a time for which theparticular task is scheduled, based on the user device entering avicinity of the particular task location, and/or the like).Additionally, or alternatively, the crowdsource platform mayautomatically obtain the data identifying the location of the userdevice (e.g., based on a current time corresponding to a time for whichthe particular task is scheduled).

In some implementations, the crowdsource platform may scheduleperformance of tasks based on sensor data (e.g., weather forecast data,time of day data, and/or the like). For example, if the sensor dataindicates a snowstorm will cease after a particular time, thecrowdsource platform may schedule the task of snow removal after theparticular time. In some implementations, the crowdsource platform maydetermine a quantity of time the user device is located at theparticular task location, and may adjust a task price based on thequantity of time. For example, if cleaning a first park takes thirtyminutes and cleaning a second park takes four hours, the crowdsourceplatform may calculate the task prices differently for cleaning thefirst park and the second park.

As further shown in FIG. 1D, and by reference number 140, thecrowdsource platform may determine that the identified location matchesthe particular task location. For example, the crowdsource platform maydetermine that the location of the user device is within a thresholddistance from the particular task location. If the identified locationdoes not match the particular task location (e.g., is not within thethreshold distance), the crowdsource platform may provide a notificationto the user indicating that the user is not in the correct location toperform the particular task, may refrain from capturing data associatedwith performance of the particular task, and/or the like. If theidentified location matches the particular task location (e.g., iswithin the threshold distance), the crowdsource platform may proceed tocapture data associated with performance of the particular task, asdescribed below in connection with FIG. 1E.

As shown in FIG. 1E, and by reference number 145, the crowdsourceplatform may receive, from the user device, task image data identifyingimages of the particular task location. For example, the user device mayinclude a camera, and the camera may capture images of the particulartask location before, during, and/or after the particular task isperformed by the user. An application provided on the user device mayprovide the task image data to the crowdsource platform. In someimplementations, the user may cause the user device to capture theimages and/or send the task image data to the crowdsource platform. Theuser device may capture the images and/or send the task image dataperiodically, based on an instruction received from the user, based oninformation received from the crowdsource platform or an applicationassociated with the crowdsource platform, and/or the like.

As further shown in FIG. 1E, and by reference number 150, thecrowdsource platform may access camera data, identifying images of theparticular task location, from cameras identified as associated with theparticular task location. The crowdsource platform may access cameradata captured before the user begins to perform the particular task,during performance of the particular task by the user, and/or after theuser completes the particular task. In some implementations, thecrowdsource platform may receive, store, and/or access the camera dataperiodically, based on times and/or time intervals specified by thecrowdsource platform, and/or the like.

In some implementations, the crowdsource platform may access and/orstore only a portion of the camera data. For example, the crowdsourceplatform may receive, store, and/or access camera data captured at timeintervals that are less frequent than the camera captures images of theparticular task location. In some implementations, the crowdsourceplatform may limit or reduce the camera data to include only camera datathat relates to the particular task. For example, when the particulartask is performed in a smaller physical area smaller than an overallphysical area captured by a camera, the crowdsource platform may limitthe camera data to data associated with the smaller physical area.

In some implementations, the crowdsource platform may access, from thecameras, other camera data identifying images not associated with theparticular task location, and may filter the other camera data from thecamera data. For example, the other camera data may be associated withcrime detection or other purposes not related to determining performanceof the particular task, and may not be stored, processed, and/or thelike by the crowdsource platform when determining performance of theparticular task. In this way, the crowdsource platform may conservecomputing resources (e.g., processing resources, memory resources,network resources, and/or the like) that would otherwise be wastedstoring, processing, communicating, and/or the like data unrelated toperformance of the particular task.

As shown in FIG. 1F, and by reference number 155, the crowdsourceplatform may receive, from the user device, user image data identifyingimages of the user performing the particular task at the particular tasklocation. The user image data may include data identifying theparticular task location before the user begins performing theparticular task, while the user is performing the particular task, afterthe user completes performance of the particular task, and/or the like.

As further shown in FIG. 1F, and by reference number 160, thecrowdsource platform may perform facial recognition on the user imagedata to identify an identity of the user. In this way, the crowdsourceplatform may ensure that the user performing the particular task is theuser who will receive the funds for performing the particular task.Additionally, or alternatively, the crowdsource platform may obtainother information identifying the user (e.g., an account number, apersonal identification number, and/or the like associated with the userby the crowdsource platform), may obtain an image that identifies theuser (e.g., a scan of the user's driver's license, a barcode, and/or thelike), and/or the like. The crowdsource platform may obtain the otherinformation prior to performance of the particular task, duringperformance of the particular task, after performance of the particulartask, and/or the like.

As shown in FIG. 1G, and by reference number 165, the crowdsourceplatform may process the task image data and the camera data, with amachine learning model, to determine performance data identifying whatwas performed for the particular task, how much of the particular taskwas performed, particular funds available for the particular task, anamount of money to pay the user, and/or the like. For example, for atask requiring removal of trash from a particular task location, thecrowdsource platform may determine that the user only removedapproximately half of the trash at the particular task location, and maynotify the user that the user will not be paid until the task iscompleted. Alternatively, the crowdsource platform may determine to pay,to the user, half of the funds that would be paid for completing theentire task.

In some implementations, the machine learning model may include a neuralnetwork classifier model, a long short-term memory (LSTM) model, areinforcement learning model, and/or the like. In some implementations,the crowdsource platform may utilize the machine learning model toautomatically create a list of tasks to perform, to automaticallyidentify users to which to provide task notifications, to automaticallydetermine whether tasks were performed to completion, and/or the like.

In some implementations, the machine learning model may be trained, withhistorical task image data and historical camera data associated withperformance of tasks, to determine predicted performance data. Thecrowdsource platform may train the machine learning model by separatingthe historical task image data and the historical camera data into atraining set, a validation set, a test set, and/or the like. Thetraining set may be utilized to train the machine learning model. Thevalidation set may be utilized to validate results of the trainedmachine learning model. The test set may be utilized to test operationof the machine learning model.

In some implementations, the crowdsource platform may train the machinelearning model using, for example, an unsupervised training procedureand based on the historical task image data and the historical cameradata. For example, the crowdsource platform may perform dimensionalityreduction to reduce the historical task image data and the historicalcamera data to a minimum feature set, thereby reducing resources (e.g.,processing resources, memory resources, and/or the like) to train themachine learning model, and may apply a classification technique to theminimum feature set.

In some implementations, the crowdsource platform may use a logisticregression classification technique to determine a categorical outcome(e.g., what was performed for a particular task, how much of theparticular task was performed, particular funds available for theparticular task, an amount of money to pay the user, and/or the like).Additionally, or alternatively, the crowdsource platform may use a naïveBayesian classifier technique. In this case, the crowdsource platformmay perform binary recursive partitioning to split the historical taskimage data and historical camera data into partitions and/or branchesand use the partitions and/or branches to determine outcomes (e.g., whatwas performed for a particular task, how much of the particular task wasperformed, particular funds available for the particular task, an amountof money to pay the user, and/or the like). Based on using recursivepartitioning, the crowdsource platform may reduce utilization ofcomputing resources relative to manual, linear sorting and analysis ofdata points, thereby enabling use of thousands, millions, or billions ofdata points to train the machine learning model, which may result in amore accurate model than using fewer data points. Additionally, oralternatively, the crowdsource platform may use a support vector machine(SVM) classifier technique to generate a non-linear boundary betweendata points in the training set. In this case, the non-linear boundaryis used to classify test data into a particular class.

Additionally, or alternatively, the crowdsource platform may train themachine learning model using a supervised training procedure thatincludes receiving input to the machine learning model from a subjectmatter expert, which may reduce an amount of time, an amount ofprocessing resources, and/or the like to train the machine learningmodel relative to an unsupervised training procedure.

In some implementations, the crowdsource platform may use one or moreother model training techniques, such as a neural network technique, alatent semantic indexing technique, and/or the like. For example, thecrowdsource platform may perform an artificial neural network processingtechnique (e.g., using a two-layer feedforward neural networkarchitecture, a three-layer feedforward neural network architecture,and/or the like) to perform pattern recognition with regard to patternsof the historical task image data and the historical camera data. Inthis case, using the artificial neural network processing technique mayimprove an accuracy of the trained machine learning model generated bythe crowdsource platform by being more robust to noisy, imprecise, orincomplete data, and by enabling the crowdsource platform to detectpatterns and/or trends undetectable to human analysts or systems usingless complex techniques. In some implementations, the crowdsourceplatform may train the machine learning model, with the historical taskimage data and the historical camera data associated with performance oftasks, to determine the predicted performance data. Alternatively, thecrowdsource platform may receive the machine learning model from anotherdevice that trains the machine learning model, with the historical taskimage data and the historical camera data associated with performance oftasks, to determine the predicted performance data.

In some implementations, the machine learning model may additionallydetermine a level of quality of performance of the task (e.g., based ona portion of the task that is completed, an amount of time within whichthe task is completed, and/or the like), and may assign a rating to theuser based on the determined level of quality. The crowdsource platformmay maintain an overall rating for a user based on ratings determinedfor one or more tasks performed by the user (e.g., an average of theratings for each task performed, a weighted average of the ratings foreach task performed, and/or the like). Additionally, or alternatively,the crowdsource platform may assign one or more specific ratings to theuser (e.g., based on the type of task performed). The crowdsourceplatform may factor in the overall rating and/or specific ratings of theuser in determining whether to propose tasks to be performed by the userin the future, whether to select the user to perform tasks in thefuture, and/or the like. For example, if the crowdsource platformsolicits bids from multiple users, as described above in connection withFIG. 1B, the crowdsource platform may award performance of the taskbased on a combination of the ratings of the users, the amount of moneybid by the users, and/or the like.

In some implementations, the crowdsource platform may determine whetherto push a task notification to user devices based on profiles of usersassociated with the user devices. The user profiles may be registeredwith the crowdsource platform and, as the users perform tasks (e.g.,successfully and unsuccessfully), the crowdsource platform may learnmore about the users. For example, the crowdsource platform maydetermine users that are reliable and good at particular types of tasksand may push the task notifications out to such users.

As shown in FIG. 1H, and by reference number 170, the crowdsourceplatform may perform one or more actions based on the performance data.The one or more actions may include providing the amount of money, fromthe particular funds, to an account associated with the user. Forexample, the crowdsource platform may cause funds, in the determinedamount of money, to be transferred to an account associated with theuser, may credit an account of the user, and/or the like. In this way,the user may be compensated automatically, which may improve speed andefficiency of the process and conserve computing resources (e.g.,processing resources, memory resources, and/or the like), networkresources, and/or the like.

The one or more actions may include providing, to the user device of theuser, data identifying the amount of money provided to the account. Forexample, the crowdsource platform may cause data identifying the amountof money provided to the account to be communicated to an application ofthe user device that is associated with the crowdsource platform.Additionally, or alternatively, the crowdsource platform may cause atext message, an email, a voicemail, and/or the like, that includes thedata identifying the amount of money provided to the account, to be sentto the user device of the user. In this way, the user may beautomatically notified.

The one or more actions may include providing the amount of money,evenly from multiple funds, to the account. Alternatively, thecrowdsource platform may prioritize funds (e.g., based on an amount offunds provided), may use funds allocated for a specific purpose prior tousing general funds, may spread funds based on a specified distribution(e.g., evenly) across different types of tasks, different tasks,different task locations, and/or the like. In this way, the funds may bedistributed automatically, which may remove human subjectivity and wastefrom the process, and which may improve speed and efficiency of theprocess and conserve computing resources, network resources, and/or thelike.

The one or more actions may include assigning points, based on theamount and to be redeemed for money, to a profile associated with theuser. In some implementations, the crowdsource platform may causeinformation indicating the assigned points to be communicated to anapplication on the user device that is associated with the crowdsourceplatform and/or may cause information indicating the assigned points tobe communicated via a text message, an email, a voicemail, and/or thelike. In this way, the user may perform more tasks in order toaccumulate enough points to be redeemed for money, which may cause tasksto be performed more quickly and efficiently.

The one or more actions may include automatically posting images of theuser and performance of the particular task to a website. For example,the crowdsource platform may post images of the user that were capturedduring performance of the particular task, may post images of the user,that were previously provided by the user, in association withperformance of the task, and/or the like. In this way, the crowdsourceplatform may automatically reward and incentivize the user to performadditional tasks, which may improve the speed and efficiency associatedwith performing the additional tasks.

The one or more actions may include providing a community service awardto the user based on performance of the particular task. In this way,the crowdsource platform may automatically reward and incentivize theuser to perform additional tasks, which may improve the speed andefficiency associated with performing the additional tasks.

The one or more actions may include retraining the machine learningmodel based on the performance data. In this way, the crowdsourceplatform may improve the accuracy of the machine learning model indetermining performance data identifying what was performed for theparticular task, how much of the particular task was performed,particular funds available for the particular task, an amount of moneyto pay the user, and/or the like, which may improve speed and efficiencyof the machine learning model and conserve computing resources, networkresources, and/or the like.

The one or more actions may include causing a drone or a robot to bedispatched to the particular task location to verify performance of theparticular task. In this way, the crowdsource platform may automaticallyprovide resources necessary to confirm performance of the particulartask, which may improve speed and efficiency of the process and conservecomputing resources, network resources, and/or the like.

In some implementations, the crowdsource platform may identify anomaliesin the performance data, and modify the performance data based on theanomalies in the performance data. In some implementations, thecrowdsource platform may identify the anomalies in the performance data,and may prevent an action, of the one or more actions, from beingperformed based on the anomalies in the performance data. In this way,the crowdsource platform may automatically improve the accuracy ofdetermining the performance data, thereby improving identification ofwhat was performed for the particular task, how much of the particulartask was performed, particular funds available for the particular task,an amount of money to pay the user, and/or the like.

In this way, several different stages of the process for crowdsourcingfunds for public services are automated via machine learning, which mayremove human subjectivity and waste from the process, and which mayimprove speed and efficiency of the process and conserve computingresources (e.g., processing resources, memory resources, and/or thelike), network resources, and/or the like. Furthermore, implementationsdescribed herein use a rigorous, computerized process to perform tasksor roles that were not previously performed or were previously performedusing subjective human intuition or input. For example, currently theredoes not exist a technique that utilizes a machine learning model tocrowdsource funds for public services. Finally, the process forcrowdsourcing funds for public services conserves computing resources,network resources, and/or the like that would otherwise be wasted byinefficiently obtaining and/or allocating the funds, identifying andemploying workers to perform the services, and/or the like.

As indicated above, FIGS. 1A-1H are provided merely as examples. Otherexamples may differ from what is described with regard to FIGS. 1A-1H.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods described herein may be implemented. As shown in FIG. 2 ,environment 200 may include a user device 210, a crowdsource platform220, a network 230, and a server device 240. Devices of environment 200may interconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

User device 210 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information, such asinformation described herein. For example, user device 210 may include amobile phone (e.g., a smart phone, a radiotelephone, etc.), a laptopcomputer, a tablet computer, a desktop computer, a handheld computer, agaming device, a wearable communication device (e.g., a smartwristwatch, a pair of smart eyeglasses, etc.), a camera (e.g., asecurity camera, a closed-circuit television (CCTV) camera, a smartcamera, a satellite camera, etc.), or a similar type of device. In someimplementations, user device 210 may receive information from and/ortransmit information to crowdsource platform 220 and/or server device240.

Crowdsource platform 220 includes one or more devices that may utilize amachine learning model to crowdsource funds for public services. In someimplementations, crowdsource platform 220 may be modular such thatcertain software components may be swapped in or out depending on aparticular need. As such, crowdsource platform 220 may be easily and/orquickly reconfigured for different uses. In some implementations,crowdsource platform 220 may receive information from and/or transmitinformation to one or more user devices 210 and/or server devices 240.

In some implementations, as shown, crowdsource platform 220 may behosted in a cloud computing environment 222. Notably, whileimplementations described herein describe crowdsource platform 220 asbeing hosted in cloud computing environment 222, in someimplementations, crowdsource platform 220 may be non-cloud-based (i.e.,may be implemented outside of a cloud computing environment) or may bepartially cloud-based.

Cloud computing environment 222 includes an environment that may hostcrowdsource platform 220. Cloud computing environment 222 may providecomputation, software, data access, storage, etc. services that do notrequire end-user knowledge of a physical location and configuration ofsystem(s) and/or device(s) that host crowdsource platform 220. As shown,cloud computing environment 222 may include a group of computingresources 224 (referred to collectively as “computing resources 224” andindividually as “computing resource 224”).

Computing resource 224 includes one or more personal computers,workstation computers, server devices, or other types of computationand/or communication devices. In some implementations, computingresource 224 may host crowdsource platform 220. The cloud resources mayinclude compute instances executing in computing resource 224, storagedevices provided in computing resource 224, data transfer devicesprovided by computing resource 224, etc. In some implementations,computing resource 224 may communicate with other computing resources224 via wired connections, wireless connections, or a combination ofwired and wireless connections.

As further shown in FIG. 2 , computing resource 224 includes a group ofcloud resources, such as one or more applications (“APPs”) 224-1, one ormore virtual machines (“VMs”) 224-2, virtualized storage (“VSs”) 224-3,one or more hypervisors (“HYPs”) 224-4, and/or the like.

Application 224-1 includes one or more software applications that may beprovided to or accessed by user device 210. Application 224-1 mayeliminate a need to install and execute the software applications onuser device 210. For example, application 224-1 may include softwareassociated with crowdsource platform 220 and/or any other softwarecapable of being provided via cloud computing environment 222. In someimplementations, one application 224-1 may send/receive informationto/from one or more other applications 224-1, via virtual machine 224-2.

Virtual machine 224-2 includes a software implementation of a machine(e.g., a computer) that executes programs like a physical machine.Virtual machine 224-2 may be either a system virtual machine or aprocess virtual machine, depending upon use and degree of correspondenceto any real machine by virtual machine 224-2. A system virtual machinemay provide a complete system platform that supports execution of acomplete operating system (“OS”). A process virtual machine may executea single program and may support a single process. In someimplementations, virtual machine 224-2 may execute on behalf of a user(e.g., a user of user device 210 or an operator of crowdsource platform220), and may manage infrastructure of cloud computing environment 222,such as data management, synchronization, or long-duration datatransfers.

Virtualized storage 224-3 includes one or more storage systems and/orone or more devices that use virtualization techniques within thestorage systems or devices of computing resource 224. In someimplementations, within the context of a storage system, types ofvirtualizations may include block virtualization and filevirtualization. Block virtualization may refer to abstraction (orseparation) of logical storage from physical storage so that the storagesystem may be accessed without regard to physical storage orheterogeneous structure. The separation may provide administrators ofthe storage system with flexibility in how the administrators managestorage for end users. File virtualization may eliminate dependenciesbetween data accessed at a file level and a location where files arephysically stored. This may enable optimization of storage use, serverconsolidation, and/or performance of non-disruptive file migrations.

Hypervisor 224-4 may provide hardware virtualization techniques thatallow multiple operating systems (e.g., “guest operating systems”) toexecute concurrently on a host computer, such as computing resource 224.Hypervisor 224-4 may present a virtual operating platform to the guestoperating systems and may manage the execution of the guest operatingsystems. Multiple instances of a variety of operating systems may sharevirtualized hardware resources.

Network 230 includes one or more wired and/or wireless networks. Forexample, network 230 may include a cellular network (e.g., a fifthgeneration (5G) network, a long-term evolution (LTE) network, a thirdgeneration (3G) network, a code division multiple access (CDMA) network,etc.), a public land mobile network (PLMN), a local area network (LAN),a wide area network (WAN), a metropolitan area network (MAN), atelephone network (e.g., the Public Switched Telephone Network (PSTN)),a private network, an ad hoc network, an intranet, the Internet, a fiberoptic-based network, and/or the like, and/or a combination of these orother types of networks.

Server device 240 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information, such asinformation described herein. For example, server device 240 may includea laptop computer, a tablet computer, a desktop computer, a group ofserver devices, or a similar type of device, associated with agovernment agency, a financial institution, a social serviceorganization, and/or the like. In some implementations, server device240 may receive information from and/or transmit information to userdevice 210 and/or crowdsource platform 220.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as an example. In practice, there may be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIG. 2 . Furthermore, two or more devices shown in FIG. 2 maybe implemented within a single device and/or a single device shown inFIG. 2 may be implemented as multiple, distributed devices.Additionally, or alternatively, a set of devices (e.g., one or moredevices) of environment 200 may perform one or more functions describedas being performed by another set of devices of environment 200.

FIG. 3 is a diagram of example components of a device 300. Device 300may correspond to user device 210, crowdsource platform 220, computingresource 224, and/or server device 240. In some implementations, userdevice 210, crowdsource platform 220, computing resource 224, and/orserver device 240 may include one or more devices 300 and/or one or morecomponents of device 300. As shown in FIG. 3 , device 300 may include abus 310, a processor 320, a memory 330, a storage component 340, aninput component 350, an output component 360, and/or a communicationinterface 370.

Bus 310 includes a component that permits communication among thecomponents of device 300. Processor 320 is implemented in hardware,firmware, or a combination of hardware and software. Processor 320 is acentral processing unit (CPU), a graphics processing unit (GPU), anaccelerated processing unit (APU), a microprocessor, a microcontroller,a digital signal processor (DSP), a field-programmable gate array(FPGA), an application-specific integrated circuit (ASIC), or anothertype of processing component. In some implementations, processor 320includes one or more processors capable of being programmed to perform afunction. Memory 330 includes a random-access memory (RAM), a read onlymemory (ROM), and/or another type of dynamic or static storage device(e.g., a flash memory, a magnetic memory, and/or an optical memory) thatstores information and/or instructions for use by processor 320.

Storage component 340 stores information and/or software related to theoperation and use of device 300. For example, storage component 340 mayinclude a hard disk (e.g., a magnetic disk, an optical disk, amagneto-optic disk, and/or a solid-state disk), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 350 includes a component that permits device 300 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 350 mayinclude a sensor for sensing information (e.g., a global positioningsystem (GPS) component, an accelerometer, a gyroscope, and/or anactuator). Output component 360 includes a component that providesoutput information from device 300 (e.g., a display, a speaker, and/orone or more light-emitting diodes (LEDs)).

Communication interface 370 includes a transceiver-like component (e.g.,a transceiver and/or a separate receiver and transmitter) that enablesdevice 300 to communicate with other devices, such as via a wiredconnection, a wireless connection, or a combination of wired andwireless connections. Communication interface 370 may permit device 300to receive information from another device and/or provide information toanother device. For example, communication interface 370 may include anEthernet interface, an optical interface, a coaxial interface, aninfrared interface, a radio frequency (RF) interface, a universal serialbus (USB) interface, a Wi-Fi interface, a cellular network interface,and/or the like.

Device 300 may perform one or more processes described herein. Device300 may perform these processes based on processor 320 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 330 and/or storage component 340. Acomputer-readable medium is defined herein as a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions may be read into memory 330 and/or storagecomponent 340 from another computer-readable medium or from anotherdevice via communication interface 370. When executed, softwareinstructions stored in memory 330 and/or storage component 340 may causeprocessor 320 to perform one or more processes described herein.Additionally, or alternatively, hardwired circuitry may be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 3 are provided asan example. In practice, device 300 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 3 . Additionally, or alternatively,a set of components (e.g., one or more components) of device 300 mayperform one or more functions described as being performed by anotherset of components of device 300.

FIG. 4 is a flow chart of an example process 400 for utilizing a machinelearning model to crowdsource funds for public services. In someimplementations, one or more process blocks of FIG. 4 may be performedby a crowdsource platform (e.g., crowdsource platform 220). In someimplementations, one or more process blocks of FIG. 4 may be performedby another device or a group of devices separate from or including thecrowdsource platform, such as a user device (e.g., user device 210)and/or a server device (e.g., server device 240).

As shown in FIG. 4 , process 400 may include providing, to a userdevice, task data identifying tasks to be performed (block 410). Forexample, the crowdsource platform (e.g., using computing resource 224,processor 320, memory 330, communication interface 370, and/or the like)may provide, to a user device, task data identifying tasks to beperformed, as described above.

As further shown in FIG. 4 , process 400 may include receiving, from theuser device, a selection of a particular task from the tasks to beperformed, wherein the particular task is to be performed by a user ofthe user device (block 420). For example, the crowdsource platform(e.g., using computing resource 224, processor 320, storage component340, communication interface 370, and/or the like) may receive, from theuser device, a selection of a particular task from the tasks to beperformed, as described above. In some implementations, the particulartask may be performed by a user of the user device.

As further shown in FIG. 4 , process 400 may include identifying one ormore cameras associated with a particular task location, wherein theparticular task location includes a geographical location where theparticular task is to be performed (block 430). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,memory 330, and/or the like) may identify one or more cameras associatedwith a particular task location, as described above. In someimplementations, the particular task location may include a geographicallocation where the particular task is to be performed.

As further shown in FIG. 4 , process 400 may include receiving, from theuser device, data identifying a location of the user device (block 440).For example, the crowdsource platform (e.g., using computing resource224, processor 320, communication interface 370, and/or the like) mayreceive, from the user device, data identifying a location of the userdevice, as described above.

As further shown in FIG. 4 , process 400 may include determining thatthe location of the user device matches the particular task location(block 450). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, storage component 340, and/or thelike) may determine that the location of the user device matches theparticular task location, as described above.

As further shown in FIG. 4 , process 400 may include receiving, from theuser device, task image data identifying images of the particular tasklocation (block 460). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, communication interface 370,and/or the like) may receive, from the user device, task image dataidentifying images of the particular task location, as described above.

As further shown in FIG. 4 , process 400 may include accessing, from theone or more cameras identified as associated with the particular tasklocation, camera data identifying images of the particular task location(block 470). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, memory 330, communicationinterface 370, and/or the like) may access, from the one or more camerasidentified as associated with the particular task location, camera dataidentifying images of the particular task location, as described above.

As further shown in FIG. 4 , process 400 may include processing the taskimage data and the camera data, with a machine learning model, todetermine performance data, wherein the performance data includes dataidentifying at least two of: what was performed for the particular task,how much of the particular task was performed by the user, particularfunds available for the particular task, or an amount of money to paythe user (block 480). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, storage component 340, and/or thelike) may process the task image data and the camera data, with amachine learning model, to determine performance data, as describedabove. In some implementations, the performance data may include dataidentifying at least two of: what was performed for the particular task,how much of the particular task was performed by the user, particularfunds available for the particular task, or an amount of money to paythe user.

As further shown in FIG. 4 , process 400 may include performing one ormore actions based on the performance data (block 490). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,memory 330, storage component 340, communication interface 370, and/orthe like) may perform one or more actions based on the performance data,as described above.

Process 400 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In a first implementation, when performing the one or more actions, thecrowdsource platform may provide the amount of money, from theparticular funds, to an account associated with the user, may provide,to the user device, data identifying the amount of money provided to theaccount, may provide the amount of money, evenly from multiple funds, tothe account, and/or the like.

In a second implementation, alone or in combination with the firstimplementation, when performing the one or more actions, the crowdsourceplatform may assign points, based on the amount and to be redeemed formoney, to a profile associated with the user, may post images of theuser and performance of the particular task to a website, may provide acommunity service award to the user based on performance of theparticular task, may retrain the machine learning model based on theperformance data, and/or the like.

In a third implementation, alone or in combination with one or more ofthe first and second implementations, the crowdsource platform mayprovide, to a plurality of user devices, the task data identifying thetasks to be performed; may receive, from the plurality of user devicesand based on the task data, funding data associated with performance ofthe tasks, wherein the funding data may identify funds to allocate forperformance of the tasks; and may receive, from one or more serverdevices, the funds based on the funding data.

In a fourth implementation, alone or in combination with one or more ofthe first through third implementations, the crowdsource platform mayreceive user image data identifying the user performing the particulartask at the particular task location, and may perform facial recognitionon the user image data to identify an identity of the user.

In a fifth implementation, alone or in combination with one or more ofthe first through fourth implementations, the crowdsource platform maytrain the machine learning model, with historical task image data andhistorical camera data associated with performance of a plurality oftasks, to determine predicted performance data; or may receive themachine learning model from another device, wherein the machine learningmodel may be trained by the other device.

In a sixth implementation, alone or in combination with one or more ofthe first through fifth implementations, the crowdsource platform mayreceive, from the user device, information indicating particular tasksthat the user is willing to perform; may provide, to the user device,the task data identifying the tasks to be performed includes; and mayprovide, to the user device, the task data identifying the tasks to beperformed based on the information indicating the particular tasks thatthe user is willing to perform.

Although FIG. 4 shows example blocks of process 400, in someimplementations, process 400 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 4 . Additionally, or alternatively, two or more of theblocks of process 400 may be performed in parallel.

FIG. 5 is a flow chart of an example process 500 for utilizing a machinelearning model to crowdsource funds for public services. In someimplementations, one or more process blocks of FIG. 5 may be performedby a crowdsource platform (e.g., crowdsource platform 220). In someimplementations, one or more process blocks of FIG. 5 may be performedby another device or a group of devices separate from or including thecrowdsource platform, such as a user device (e.g., user device 210)and/or a server device (e.g., server device 240).

As shown in FIG. 5 , process 500 may include providing, to a pluralityof user devices, task data identifying tasks to be performed (block505). For example, the crowdsource platform (e.g., using computingresource 224, processor 320, communication interface 370, and/or thelike) may provide, to a plurality of user devices, task data identifyingtasks to be performed, as described above.

As further shown in FIG. 5 , process 500 may include receiving, from theplurality of user devices and based on the task data, funding dataassociated with performance of the tasks, wherein the funding dataidentifies funds to allocate for performance of the tasks (block 510).For example, the crowdsource platform (e.g., using computing resource224, processor 320, communication interface 370, and/or the like) mayreceive, from the plurality of user devices and based on the task data,funding data associated with performance of the tasks, as describedabove. In some implementations, the funding data may identify funds toallocate for performance of the tasks.

As further shown in FIG. 5 , process 500 may include receiving, from oneor more server devices, the funds based on the funding data (block 515).For example, the crowdsource platform (e.g., using computing resource224, processor 320, communication interface 370, and/or the like) mayreceive, from one or more server devices, the funds based on the fundingdata, as described above.

As further shown in FIG. 5 , process 500 may include providing, to aparticular user device, the task data identifying the tasks to beperformed (block 520). For example, the crowdsource platform (e.g.,using computing resource 224, processor 320, communication interface370, and/or the like) may provide, to a particular user device, the taskdata identifying the tasks to be performed, as described above.

As further shown in FIG. 5 , process 500 may include receiving, from theparticular user device, a selection of a particular task from the tasksto be performed (block 525). For example, the crowdsource platform(e.g., using computing resource 224, processor 320, memory 330,communication interface 370, and/or the like) may receive, from theparticular user device, a selection of a particular task from the tasksto be performed, as described above.

As further shown in FIG. 5 , process 500 may include identifying one ormore cameras associated with a particular task location, wherein theparticular task location includes a geographical location where theparticular task is to be performed (block 530). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,storage component 340, and/or the like) may identify one or more camerasassociated with a particular task location and wherein the particulartask location includes a geographical location, as described above. Insome implementations, the particular task location may include ageographical location where the particular task is to be performed.

As further shown in FIG. 5 , process 500 may include receiving, from theparticular user device, data identifying a location of the particularuser device (block 535). For example, the crowdsource platform (e.g.,using computing resource 224, processor 320, storage component 340,communication interface 370, and/or the like) may receive, from theparticular user device, data identifying a location of the particularuser device, as described above.

As further shown in FIG. 5 , process 500 may include determining thatthe location of the particular user device matches the particular tasklocation (block 540). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, memory 330, and/or the like) maydetermine that the location of the particular user device matches theparticular task location, as described above.

As further shown in FIG. 5 , process 500 may include receiving, from theparticular user device, task image data identifying images of theparticular task location (block 545). For example, the crowdsourceplatform (e.g., using computing resource 224, processor 320,communication interface 370, and/or the like) may receive, from theparticular user device, task image data identifying images of theparticular task location, as described above.

As further shown in FIG. 5 , process 500 may include accessing, from theone or more cameras, camera data identifying images of the particulartask location (block 550). For example, the crowdsource platform (e.g.,using computing resource 224, processor 320, memory 330, communicationinterface 370, and/or the like) may access, from the one or morecameras, camera data identifying images of the particular task location,as described above.

As further shown in FIG. 5 , process 500 may include processing the taskimage data and the camera data, with a machine learning model, todetermine performance data, wherein the performance data includes dataidentifying what was performed for the particular task, how much of theparticular task was performed, particular funds available for theparticular task, and an amount of money to pay for performance of theparticular task (block 555). For example, the crowdsource platform(e.g., using computing resource 224, processor 320, memory 330, and/orthe like) may process the task image data and the camera data, with amachine learning model, to determine performance data, as describedabove. In some implementations, the performance data may include dataidentifying what was performed for the particular task, how much of theparticular task was performed, particular funds available for theparticular task, and an amount of money to pay for performance of theparticular task.

As further shown in FIG. 5 , process 500 may include performing one ormore actions based on the performance data (block 560). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,memory 330, storage component 340, communication interface 370, and/orthe like) may perform one or more actions based on the performance data,as described above.

Process 500 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In a first implementation, the crowdsource platform may access, from theone or more cameras and with the camera data, other camera dataidentifying images not associated with the particular task location; andmay filter the other camera data from the camera data.

In a second implementation, alone or in combination with the firstimplementation, the crowdsource platform may identify anomalies in theperformance data, and may modify the performance data based on theanomalies in the performance data.

In a third implementation, alone or in combination with one or more ofthe first and second implementations, the crowdsource platform mayidentify anomalies in the performance data, and may prevent an action,of the one or more actions, from being performed based on the anomaliesin the performance data.

In a fourth implementation, alone or in combination with one or more ofthe first through third implementations, the crowdsource platform maycause a drone or a robot to be dispatched to the particular tasklocation, to verify performance of the particular task, beforeperforming the one or more actions.

In a fifth implementation, alone or in combination with one or more ofthe first through fourth implementations, when performing the one ormore actions, the crowdsource platform may cause a drone or a robot tobe dispatched to the particular task location to verify performance ofthe particular task.

In a sixth implementation, alone or in combination with one or more ofthe first through fifth implementations, the crowdsource platform mayevenly allocate the funds for the tasks to be performed, or prioritizethe funds, based on amounts in the funds, for the tasks to be performed.

Although FIG. 5 shows example blocks of process 500, in someimplementations, process 500 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 5 . Additionally, or alternatively, two or more of theblocks of process 500 may be performed in parallel.

FIG. 6 is a flow chart of an example process 600 for utilizing a machinelearning model to crowdsource funds for public services. In someimplementations, one or more process blocks of FIG. 6 may be performedby a crowdsource platform (e.g., crowdsource platform 220). In someimplementations, one or more process blocks of FIG. 6 may be performedby another device or a group of devices separate from or including thecrowdsource platform, such as a user device (e.g., user device 210)and/or a server device (e.g., server device 240).

As shown in FIG. 6 , process 600 may include receiving, from a userdevice, a selection of a particular task from tasks to be performed(block 610). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, communication interface 370,and/or the like) may receive, from a user device, a selection of aparticular task from tasks to be performed, as described above.

As further shown in FIG. 6 , process 600 may include identifying one ormore cameras associated with a particular task location, wherein theparticular task location includes a geographical location where theparticular task is to be performed (block 620). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,memory 330, and/or the like) may identify one or more cameras associatedwith a particular task location, as described above. In someimplementations, the particular task location may include a geographicallocation where the particular task is to be performed.

As further shown in FIG. 6 , process 600 may include receiving, from theuser device, data identifying a location of the user device (block 630).For example, the crowdsource platform (e.g., using computing resource224, processor 320, communication interface 370, and/or the like) mayreceive, from the user device, data identifying a location of the userdevice, as described above.

As further shown in FIG. 6 , process 600 may include determining thatthe location of the user device matches the particular task location(block 640). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, storage component 340, and/or thelike) may determine that the location of the user device matches theparticular task location, as described above.

As further shown in FIG. 6 , process 600 may include receiving, from theuser device, task image data identifying images of the particular tasklocation (block 650). For example, the crowdsource platform (e.g., usingcomputing resource 224, processor 320, communication interface 370,and/or the like) may receive, from the user device, task image dataidentifying images of the particular task location, as described above.

As further shown in FIG. 6 , process 600 may include accessing, from theone or more cameras, camera data identifying images of the particulartask location (block 660). For example, the crowdsource platform (e.g.,using computing resource 224, processor 320, memory 330, communicationinterface 370, and/or the like) may access, from the one or morecameras, camera data identifying images of the particular task location,as described above.

As further shown in FIG. 6 , process 600 may include processing the taskimage data and the camera data, with a model, to determine performancedata, wherein the model is trained, with historical task image data andhistorical camera data associated with performance of a plurality oftasks, to determine predicted performance data, and wherein theperformance data includes data identifying what was performed for theparticular task, how much of the particular task was performed,particular funds available for the particular task, and an amount ofmoney to pay for performance of the particular task (block 670). Forexample, the crowdsource platform (e.g., using computing resource 224,processor 320, memory 330, and/or the like) may process the task imagedata and the camera data, with a model, to determine performance data,as described above. In some implementations, the model may be trained,with historical task image data and historical camera data associatedwith performance of a plurality of tasks, to determine predictedperformance data. In some implementations, the performance data mayinclude data identifying what was performed for the particular task, howmuch of the particular task was performed, particular funds availablefor the particular task, and an amount of money to pay for performanceof the particular task.

As further shown in FIG. 6 , process 600 may include performing one ormore actions based on the performance data (block 680). For example, thecrowdsource platform (e.g., using computing resource 224, processor 320,memory 330, storage component 340, communication interface 370, and/orthe like) may perform one or more actions based on the performance data,as described above.

Process 600 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In a first implementation, when performing the one or more actions, thecrowdsource platform may cause a drone or a robot to be dispatched tothe particular task location to verify performance of the particulartask, may provide the amount of money, from the particular funds, to anaccount associated with the user, may provide, to the user device, dataidentifying the amount of money provided to the account, or may providethe amount of money, evenly from multiple funds, to the account.

In a second implementation, alone or in combination with the firstimplementation, when performing the one or more actions, the crowdsourceplatform may assign points, based on the amount and to be redeemed formoney, to a profile associated with the user, may post images of theuser and performance of the particular task to a website, may provide acommunity service award to the user based on performance of theparticular task, or may retrain the model based on the performance data.

In a third implementation, alone or in combination with one or more ofthe first and second implementations, the crowdsource platform mayreceive, from the user device, user image data identifying a personperforming the particular task at the particular task location, and mayperform facial recognition on the user image data to identify anidentity of the person.

In a fourth implementation, alone or in combination with one or more ofthe first through third implementations, the crowdsource platform mayreceive, from the user device, information indicating particular tasksthat the user is willing to perform, and may provide, to the userdevice, the task data identifying the tasks to be performed based on theinformation indicating the particular tasks that the user is willing toperform, wherein the tasks to be performed match the particular tasksthat the user is willing to perform.

In a fifth implementation, alone or in combination with one or more ofthe first through fourth implementations, the crowdsource platform mayidentify anomalies in the performance data, and may prevent an action,of the one or more actions, from being performed based on the anomaliesin the performance data.

Although FIG. 6 shows example blocks of process 600, in someimplementations, process 600 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 6 . Additionally, or alternatively, two or more of theblocks of process 600 may be performed in parallel.

The foregoing disclosure provides illustration and description, but isnot intended to be exhaustive or to limit the implementations to theprecise forms disclosed. Modifications and variations may be made inlight of the above disclosure or may be acquired from practice of theimplementations.

As used herein, the term “component” is intended to be broadly construedas hardware, firmware, and/or a combination of hardware and software.

A user interface may include a graphical user interface, a non-graphicaluser interface, a text-based user interface, or the like. A userinterface may provide information for display. In some implementations,a user may interact with the information, such as by providing input viaan input component of a device that provides the user interface fordisplay. In some implementations, a user interface may be configurableby a device and/or a user (e.g., a user may change the size of the userinterface, information provided via the user interface, a position ofinformation provided via the user interface, and/or the like).Additionally, or alternatively, a user interface may be pre-configuredto a standard configuration, a specific configuration based on a type ofdevice on which the user interface is displayed, and/or a set ofconfigurations based on capabilities and/or specifications associatedwith a device on which the user interface is displayed.

It will be apparent that systems and/or methods described herein may beimplemented in different forms of hardware, firmware, or a combinationof hardware and software. The actual specialized control hardware orsoftware code used to implement these systems and/or methods is notlimiting of the implementations. Thus, the operation and behavior of thesystems and/or methods were described herein without reference tospecific software code—it being understood that software and hardwaremay be designed to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of various implementations. In fact,many of these features may be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below may directly depend on only one claim, thedisclosure of various implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and may be used interchangeably with “one or more.” Furthermore,as used herein, the term “set” is intended to include one or more items(e.g., related items, unrelated items, a combination of related andunrelated items, etc.), and may be used interchangeably with “one ormore.” Where only one item is intended, the term “only one” or similarlanguage is used. Also, as used herein, the terms “has,” “have,”“having,” or the like are intended to be open-ended terms. Further, thephrase “based on” is intended to mean “based, at least in part, on”unless explicitly stated otherwise.

What is claimed is:
 1. A method, comprising: receiving, by a device andfrom a user device, an indication of a particular task to be performed,receiving, by the device and from the user device, data identifying alocation of the user device; determining, by the device, that thelocation of the user device is associated with the particular task;receiving, by the device and from the user device, task image dataidentifying images of the particular task; processing, by the device,the task image data, with a machine learning model, to determineperformance data, wherein the machine learning model is trained based ona neural network processing technique to perform pattern recognitionwith regard to patterns of historical task image data and historicalcompleteness data, and wherein the performance data includes informationindicating whether the particular task has been completed and a level ofquality associated with the particular task based on the task imagedata; retraining, by the device, the machine learning model, based onthe performance data to improve an accuracy of the machine learningmodel; and performing, by the device, one or more actions based on theperformance data.
 2. The method of claim 1, wherein receiving theindication of the particular task comprises: receiving an additionalimage associated with the particular task, and determining to authorizethe particular task as a task to be performed.
 3. The method of claim 1,wherein determining that the location of the user device is associatedwith the particular task comprises: determining that the location of theuser device is within a threshold distance of a particular task locationassociated with the particular task.
 4. The method of claim 1, whereinthe task image data comprises data identifying one or more of: aparticular task location associated with the particular task before auser begins performing the particular task, the particular task locationwhile the user is performing the particular task, or the particular tasklocation after the user completes performance of the particular task. 5.The method of claim 1, further comprising: determining, based on thetask image data, an identity of a user associated with the particulartask; and wherein performing the one or more actions is based ondetermining the identity of the user.
 6. The method of claim 1, whereinthe one or more actions include causing a drone or a robot to bedispatched to a particular task location associated with the particulartask to verify performance of the particular task.
 7. The method ofclaim 1, further comprising: identifying an anomaly in the performancedata; and modifying the performance data based on the anomaly.
 8. Adevice, comprising: one or more memories; and one or more processors,coupled to the one or more memories, configured to: receive, from a userdevice, an indication of a particular task to be performed; receive,from the user device, data identifying a location of the user device;determine that the location of the user device is associated with theparticular task; receive, from the user device, task image dataidentifying images of the particular task; process the task image data,with a machine learning model, to determine performance data, whereinthe machine learning model is trained based on a neural networkprocessing technique to perform pattern recognition with regard topatterns of historical task image data and historical completeness data,and wherein the performance data includes information indicating whetherthe particular task has been completed and a level of quality associatedwith the particular task based on the task image data; retrain themachine learning model based on the performance data to improve anaccuracy of the machine learning model; and perform one or more actionsbased on the performance data.
 9. The device of claim 8, wherein the oneor more processors, when receiving the indication of the particulartask, are configured to: receive an additional image associated with theparticular task, and determine to authorize the particular task as atask to be performed.
 10. The device of claim 8, wherein the one or moreprocessors, when determining that the location of the user device isassociated with the particular task, are configured to: determine thatthe location of the user device is within a threshold distance of aparticular task location associated with the particular task.
 11. Thedevice of claim 8, wherein the task image data comprises dataidentifying one or more of: a particular task location associated withthe particular task before a user begins performing the particular task,the particular task location while the user is performing the particulartask, or the particular task location after the user completesperformance of the particular task.
 12. The device of claim 8, whereinthe one or more processors are further configured to: determine, basedon the task image data, an identity of a user associated with theparticular task; and wherein performing the one or more actions is basedon determining the identity of the user.
 13. The device of claim 8,wherein the one or more processors, when performing the one or moreactions, are configured to: cause a drone or a robot to be dispatched toa particular task location associated with the particular task to verifyperformance of the particular task.
 14. The device of claim 8, whereinthe one or more processors are further configured to: identify ananomaly in the performance data; and modify the performance data basedon the anomaly.
 15. A non-transitory computer-readable medium storing aset of instructions, the set of instructions comprising: one or moreinstructions that, when executed by one or more processors of a device,cause the device to: receive, from a user device, an indication of aparticular task to be performed; receive, from the user device, dataidentifying a location of the user device; determine that the locationof the user device is associated with the particular task; receive, fromthe user device, task image data identifying images of the particulartask; process the task image data, with a machine learning model, todetermine performance data, wherein the machine learning model istrained based on a neural network processing technique to performpattern recognition with regard to patterns of historical task imagedata and historical completeness data, and wherein the performance dataincludes information indicating whether the particular task has beencompleted and a level of quality associated with the particular taskbased on the task image data; retrain the machine learning model basedon the performance data to improve an accuracy of the machine learningmodel; and perform one or more actions based on the performance data.16. The non-transitory computer-readable medium of claim 15, wherein theone or more instructions, that cause the device to receive theindication of the particular task, cause the device to: receive anadditional image associated with the particular task, and determine toauthorize the particular task as a task to be performed.
 17. Thenon-transitory computer-readable medium of claim 15, wherein the one ormore instructions, that cause the device to determine that the locationof the user device is associated with the particular task, cause thedevice to: determine that the location of the user device is within athreshold distance of a particular task location associated with theparticular task.
 18. The non-transitory computer-readable medium ofclaim 15, wherein the task image data comprises data identifying one ormore of: a particular task location associated with the particular taskbefore a user begins performing the particular task, the particular tasklocation while the user is performing the particular task, or theparticular task location after the user completes performance of theparticular task.
 19. The non-transitory computer-readable medium ofclaim 15, wherein the one or more instructions further cause the deviceto: determine, based on the task image data, an identity of a userassociated with the particular task, and wherein performing the one ormore actions is based on determining the identity of the user.
 20. Thenon-transitory computer-readable medium of claim 15, wherein the one ormore instructions further cause the device to: identify an anomaly inthe performance data; and modify the performance data based on theanomaly.